[INFO] fetching crate auto-ytdlp 1.1.2...
[INFO] testing auto-ytdlp-1.1.2 against master#f9988fefd3add01f414f52b414308e7872622fee for pr-155114
[INFO] extracting crate auto-ytdlp 1.1.2 into /workspace/builds/worker-1-tc1/source
[INFO] started tweaking crates.io crate auto-ytdlp 1.1.2
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate auto-ytdlp 1.1.2
[INFO] tweaked toml for crates.io crate auto-ytdlp 1.1.2 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate auto-ytdlp 1.1.2 on toolchain f9988fefd3add01f414f52b414308e7872622fee
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate auto-ytdlp 1.1.2 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded kasuari v0.4.11
[INFO] [stderr]   Downloaded instability v0.3.11
[INFO] [stderr]   Downloaded line-clipping v0.3.5
[INFO] [stderr]   Downloaded notify-rust v4.12.0
[INFO] [stderr]   Downloaded zbus_names v4.3.1
[INFO] [stderr]   Downloaded euclid v0.22.13
[INFO] [stderr]   Downloaded zvariant_utils v3.3.0
[INFO] [stderr]   Downloaded mac-notification-sys v0.6.9
[INFO] [stderr]   Downloaded windows-version v0.1.7
[INFO] [stderr]   Downloaded zvariant_derive v5.9.2
[INFO] [stderr]   Downloaded toml_parser v1.0.8+spec-1.1.0
[INFO] [stderr]   Downloaded tauri-winrt-notification v0.7.2
[INFO] [stderr]   Downloaded zbus_macros v5.13.2
[INFO] [stderr]   Downloaded tree_magic_mini v3.2.2
[INFO] [stderr]   Downloaded os_pipe v1.2.3
[INFO] [stderr]   Downloaded wayland-sys v0.31.8
[INFO] [stderr]   Downloaded wayland-protocols-wlr v0.3.10
[INFO] [stderr]   Downloaded wayland-scanner v0.31.8
[INFO] [stderr]   Downloaded zvariant v5.9.2
[INFO] [stderr]   Downloaded wayland-client v0.31.12
[INFO] [stderr]   Downloaded wl-clipboard-rs v0.9.3
[INFO] [stderr]   Downloaded wayland-backend v0.3.12
[INFO] [stderr]   Downloaded quick-xml v0.37.5
[INFO] [stderr]   Downloaded zbus v5.13.2
[INFO] [stderr]   Downloaded wayland-protocols v0.32.10
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b3bd289331619ddf4d500b662b7d946c0e53e546424cdd86d06d433f2d13ab2d
[INFO] running `Command { std: "docker" "start" "-a" "b3bd289331619ddf4d500b662b7d946c0e53e546424cdd86d06d433f2d13ab2d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b3bd289331619ddf4d500b662b7d946c0e53e546424cdd86d06d433f2d13ab2d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b3bd289331619ddf4d500b662b7d946c0e53e546424cdd86d06d433f2d13ab2d", kill_on_drop: false }`
[INFO] [stdout] b3bd289331619ddf4d500b662b7d946c0e53e546424cdd86d06d433f2d13ab2d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7c10164b4750cc08937bbb8c906702cd87eb500d796a844f706edd7ede1e5c26
[INFO] running `Command { std: "docker" "start" "-a" "7c10164b4750cc08937bbb8c906702cd87eb500d796a844f706edd7ede1e5c26", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling unicode-ident v1.0.23
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]    Compiling linux-raw-sys v0.11.0
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling winnow v0.7.14
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling toml_datetime v0.7.5+spec-1.1.0
[INFO] [stderr]    Compiling unicode-segmentation v1.12.0
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]    Compiling wayland-sys v0.31.8
[INFO] [stderr]    Compiling event-listener v5.4.1
[INFO] [stderr]    Compiling futures-lite v2.6.1
[INFO] [stderr]    Compiling endi v1.1.1
[INFO] [stderr]    Compiling cc v1.2.56
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling quick-xml v0.38.4
[INFO] [stderr]    Compiling async-io v2.6.0
[INFO] [stderr]    Compiling simd-adler32 v0.3.8
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]    Compiling instability v0.3.11
[INFO] [stderr]    Compiling wayland-client v0.31.12
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling event-listener-strategy v0.5.4
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling syn v2.0.115
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling async-task v4.7.1
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling deranged v0.5.6
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling castaway v0.2.4
[INFO] [stderr]    Compiling compact_str v0.9.0
[INFO] [stderr]    Compiling async-channel v2.5.0
[INFO] [stderr]    Compiling wayland-scanner v0.31.8
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling num_threads v0.1.7
[INFO] [stderr]    Compiling fixedbitset v0.5.7
[INFO] [stderr]    Compiling lru v0.16.3
[INFO] [stderr]    Compiling toml_parser v1.0.8+spec-1.1.0
[INFO] [stderr]    Compiling litrs v1.0.0
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling piper v0.2.4
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling pxfm v0.1.27
[INFO] [stderr]    Compiling async-lock v3.4.2
[INFO] [stderr]    Compiling toml_edit v0.23.10+spec-1.0.0
[INFO] [stderr]    Compiling fdeflate v0.3.7
[INFO] [stderr]    Compiling wayland-backend v0.3.12
[INFO] [stderr]    Compiling nom v8.0.0
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling unicode-truncate v2.0.1
[INFO] [stderr]    Compiling line-clipping v0.3.5
[INFO] [stderr]    Compiling blocking v1.6.2
[INFO] [stderr]    Compiling png v0.18.1
[INFO] [stderr]    Compiling async-executor v1.14.0
[INFO] [stderr]    Compiling async-broadcast v0.7.2
[INFO] [stderr]    Compiling document-features v0.2.12
[INFO] [stderr]    Compiling uuid v1.21.0
[INFO] [stderr]    Compiling petgraph v0.8.3
[INFO] [stderr]    Compiling os_pipe v1.2.3
[INFO] [stderr]    Compiling ordered-stream v0.2.0
[INFO] [stderr]    Compiling byteorder-lite v0.1.0
[INFO] [stderr]    Compiling bytemuck v1.25.0
[INFO] [stderr]    Compiling proc-macro-crate v3.4.0
[INFO] [stderr]    Compiling anyhow v1.0.101
[INFO] [stderr]    Compiling x11rb-protocol v0.13.2
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling clap_builder v4.5.58
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling moxcms v0.7.11
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling enumflags2_derive v0.7.12
[INFO] [stderr]    Compiling strum_macros v0.27.2
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling tree_magic_mini v3.2.2
[INFO] [stderr]    Compiling polling v3.11.0
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling gethostname v1.1.0
[INFO] [stderr]    Compiling x11rb v0.13.2
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling clap_derive v4.5.55
[INFO] [stderr]    Compiling async-signal v0.2.13
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling async-process v2.5.0
[INFO] [stderr]    Compiling kasuari v0.4.11
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling strum v0.27.2
[INFO] [stderr]    Compiling ratatui-core v0.1.0
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling clap v4.5.58
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling ratatui-widgets v0.3.0
[INFO] [stderr]    Compiling ratatui-crossterm v0.1.0
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling wayland-protocols v0.32.10
[INFO] [stderr]    Compiling zvariant_utils v3.3.0
[INFO] [stderr]    Compiling enumflags2 v0.7.12
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling zvariant_derive v5.9.2
[INFO] [stderr]    Compiling image v0.25.9
[INFO] [stderr]    Compiling zvariant v5.9.2
[INFO] [stderr]    Compiling ratatui-macros v0.7.0
[INFO] [stderr]    Compiling ratatui v0.30.0
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling zbus_names v4.3.1
[INFO] [stderr]    Compiling zbus_macros v5.13.2
[INFO] [stderr]    Compiling wayland-protocols-wlr v0.3.10
[INFO] [stderr]    Compiling wl-clipboard-rs v0.9.3
[INFO] [stderr]    Compiling zbus v5.13.2
[INFO] [stderr]    Compiling arboard v3.6.1
[INFO] [stderr]    Compiling notify-rust v4.12.0
[INFO] [stderr]    Compiling auto-ytdlp v1.1.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 52s
[INFO] running `Command { std: "docker" "inspect" "7c10164b4750cc08937bbb8c906702cd87eb500d796a844f706edd7ede1e5c26", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7c10164b4750cc08937bbb8c906702cd87eb500d796a844f706edd7ede1e5c26", kill_on_drop: false }`
[INFO] [stdout] 7c10164b4750cc08937bbb8c906702cd87eb500d796a844f706edd7ede1e5c26
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9e4533962d2813f0bad7525385a462b5f29ba01cddf06b5d8a62bc6f7ee48c75
[INFO] running `Command { std: "docker" "start" "-a" "9e4533962d2813f0bad7525385a462b5f29ba01cddf06b5d8a62bc6f7ee48c75", kill_on_drop: false }`
[INFO] [stderr]    Compiling getrandom v0.4.1
[INFO] [stderr]    Compiling tempfile v3.25.0
[INFO] [stderr]    Compiling auto-ytdlp v1.1.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 6.72s
[INFO] running `Command { std: "docker" "inspect" "9e4533962d2813f0bad7525385a462b5f29ba01cddf06b5d8a62bc6f7ee48c75", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9e4533962d2813f0bad7525385a462b5f29ba01cddf06b5d8a62bc6f7ee48c75", kill_on_drop: false }`
[INFO] [stdout] 9e4533962d2813f0bad7525385a462b5f29ba01cddf06b5d8a62bc6f7ee48c75
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] c43e788cb3c7806d43ac63dc43df0d1145da9748ef2720757929cd885391a60e
[INFO] running `Command { std: "docker" "start" "-a" "c43e788cb3c7806d43ac63dc43df0d1145da9748ef2720757929cd885391a60e", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.41s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/auto_ytdlp-3bf8586ab0120401)
[INFO] [stdout] 
[INFO] [stdout] running 348 tests
[INFO] [stdout] test app_state::tests::test_acquire_file_lock ... ok
[INFO] [stdout] test app_state::tests::test_download_progress_default ... ok
[INFO] [stdout] test app_state::tests::test_download_progress_new_other_url ... ok
[INFO] [stdout] test app_state::tests::test_add_log ... ok
[INFO] [stdout] test app_state::tests::test_failed_downloads_initially_empty ... ok
[INFO] [stdout] test app_state::tests::test_download_progress_new_youtube ... ok
[INFO] [stdout] test app_state::tests::test_clear_toast ... ok
[INFO] [stdout] test app_state::tests::test_clear_logs ... ok
[INFO] [stdout] test app_state::tests::test_increment_and_reset_retries ... ok
[INFO] [stdout] test app_state::tests::test_get_settings ... ok
[INFO] [stdout] test app_state::tests::test_concurrent_get_settings ... ok
[INFO] [stdout] test app_state::tests::test_concurrent_log_writes ... ok
[INFO] [stdout] test app_state::tests::test_concurrent_flag_access ... ok
[INFO] [stdout] test app_state::tests::test_log_error ... ok
[INFO] [stdout] test app_state::tests::test_log_limit_1000 ... ok
[INFO] [stdout] test app_state::tests::test_add_active_download ... ok
[INFO] [stdout] test app_state::tests::test_add_multiple_failed_downloads ... ok
[INFO] [stdout] test app_state::tests::test_add_failed_download ... ok
[INFO] [stdout] test app_state::tests::test_get_queue_returns_copy ... ok
[INFO] [stdout] test app_state::tests::test_all_state_messages_are_processed ... ok
[INFO] [stdout] test app_state::tests::test_add_failed_download_no_duplicates ... ok
[INFO] [stdout] test app_state::tests::test_add_to_queue ... ok
[INFO] [stdout] test app_state::tests::test_load_links_updates_stats ... ok
[INFO] [stdout] test app_state::tests::test_multiple_active_downloads ... ok
[INFO] [stdout] test app_state::tests::test_concurrent_queue_access ... ok
[INFO] [stdout] test app_state::tests::test_new_batch_preserves_counters_when_cumulative_mode_enabled ... ok
[INFO] [stdout] test app_state::tests::test_new_batch_resets_counters_by_default ... ok
[INFO] [stdout] test app_state::tests::test_new_creates_default_state ... ok
[INFO] [stdout] test app_state::tests::test_new_has_welcome_logs ... ok
[INFO] [stdout] test app_state::tests::test_new_loads_settings ... ok
[INFO] [stdout] test app_state::tests::test_notification_can_be_marked_as_sent ... ok
[INFO] [stdout] test app_state::tests::test_notification_not_sent_initially ... ok
[INFO] [stdout] test app_state::tests::test_notification_lifecycle_across_multiple_runs ... ok
[INFO] [stdout] test app_state::tests::test_notification_flag_resets_on_new_run ... ok
[INFO] [stdout] test app_state::tests::test_new_creates_empty_queue ... ok
[INFO] [stdout] test app_state::tests::test_pop_queue_empty ... ok
[INFO] [stdout] test app_state::tests::test_set_concurrent ... ok
[INFO] [stdout] test app_state::tests::test_increment_completed ... ok
[INFO] [stdout] test app_state::tests::test_load_links_replaces_queue ... ok
[INFO] [stdout] test app_state::tests::test_cumulative_mode_accumulates_across_batches ... ok
[INFO] [stdout] test app_state::tests::test_notification_flag_independent_of_completion_state ... ok
[INFO] [stdout] test app_state::tests::test_show_toast ... ok
[INFO] [stdout] test app_state::tests::test_refresh_all_download_timestamps ... ok
[INFO] [stdout] test app_state::tests::test_show_toast_accepts_string ... ok
[INFO] [stdout] test app_state::tests::test_remove_from_queue_invalid_index ... ok
[INFO] [stdout] test app_state::tests::test_pop_queue_returns_front ... ok
[INFO] [stdout] test app_state::tests::test_progress_zero_when_no_tasks ... ok
[INFO] [stdout] test app_state::tests::test_remove_from_queue_valid_index ... ok
[INFO] [stdout] test app_state::tests::test_reset_for_new_run_clears_failed_downloads ... ok
[INFO] [stdout] test app_state::tests::test_set_completed ... ok
[INFO] [stdout] test app_state::tests::test_take_failed_downloads_empty ... ok
[INFO] [stdout] test app_state::tests::test_reset_for_new_run ... ok
[INFO] [stdout] test app_state::tests::test_toast_auto_expiry ... ok
[INFO] [stdout] test app_state::tests::test_ui_snapshot_includes_retry_count ... ok
[INFO] [stdout] test app_state::tests::test_set_shutdown ... ok
[INFO] [stdout] test app_state::tests::test_set_force_quit ... ok
[INFO] [stdout] test app_state::tests::test_update_settings ... ok
[INFO] [stdout] test args::tests::test_archive_file_flag_short ... ok
[INFO] [stdout] test args::tests::test_archive_file_flag_long ... ok
[INFO] [stdout] test args::tests::test_auto_flag_long ... ok
[INFO] [stdout] test args::tests::test_args_clone ... ok
[INFO] [stdout] test args::tests::test_auto_flag_short ... ok
[INFO] [stdout] test args::tests::test_concurrent_flag_long ... ok
[INFO] [stdout] test args::tests::test_concurrent_flag_short ... ok
[INFO] [stdout] test args::tests::test_default_values ... ok
[INFO] [stdout] test args::tests::test_download_dir_flag_long ... ok
[INFO] [stdout] test args::tests::test_download_dir_flag_short ... ok
[INFO] [stdout] test args::tests::test_output_template_caching ... ok
[INFO] [stdout] test downloader::common::tests::test_build_ytdlp_command_args_always_includes_newline ... ok
[INFO] [stdout] test downloader::common::tests::test_build_ytdlp_command_args_audio_only_format ... ok
[INFO] [stdout] test downloader::common::tests::test_build_ytdlp_command_args_auto_output_no_merge_format ... ok
[INFO] [stdout] test downloader::common::tests::test_build_ytdlp_command_args_best_format ... ok
[INFO] [stdout] test downloader::common::tests::test_build_ytdlp_command_args_full_settings ... ok
[INFO] [stdout] test downloader::common::tests::test_build_ytdlp_command_args_hd1080p_format ... ok
[INFO] [stdout] test downloader::common::tests::test_build_ytdlp_command_args_includes_archive_file ... ok
[INFO] [stdout] test downloader::common::tests::test_build_ytdlp_command_args_includes_output_template ... ok
[INFO] [stdout] test downloader::common::tests::test_build_ytdlp_command_args_includes_progress_template ... ok
[INFO] [stdout] test downloader::common::tests::test_build_ytdlp_command_args_includes_url ... ok
[INFO] [stdout] test downloader::common::tests::test_build_ytdlp_command_args_mp3_output ... ok
[INFO] [stdout] test downloader::common::tests::test_build_ytdlp_command_args_mp4_output ... ok
[INFO] [stdout] test downloader::common::tests::test_build_ytdlp_command_args_with_custom_args ... ok
[INFO] [stdout] test downloader::common::tests::test_build_ytdlp_command_args_with_metadata ... ok
[INFO] [stdout] test downloader::common::tests::test_build_ytdlp_command_args_with_subtitles ... ok
[INFO] [stdout] test downloader::common::tests::test_build_ytdlp_command_args_with_thumbnail ... ok
[INFO] [stdout] test downloader::common::tests::test_build_ytdlp_command_args_without_metadata ... ok
[INFO] [stdout] test downloader::common::tests::test_build_ytdlp_command_args_without_subtitles ... ok
[INFO] [stdout] test downloader::common::tests::test_build_ytdlp_command_args_without_thumbnail ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_100_percent ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_already_downloaded_archive ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_already_downloaded_file_exists ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_destination ... ok
[INFO] [stdout] test app_state::tests::test_swap_queue_items_invalid_index ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_download_line_with_already_downloaded_returns_info ... ok
[INFO] [stdout] test app_state::tests::test_swap_queue_items_same_index ... ok
[INFO] [stdout] test app_state::tests::test_swap_queue_items_valid ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_error ... ok
[INFO] [stdout] test app_state::tests::test_switching_modes_mid_session ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_fragment_progress_with_fragment_keyword ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_ignore_empty_line ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_ignore_extract_audio_without_destination ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_ignore_info ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_error_inline ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_destination_non_download_prefix ... ok
[INFO] [stdout] test app_state::tests::test_ui_snapshot_captures_all_state ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_optional_string_na_variants ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_optional_string_valid ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_optional_u64_invalid ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_optional_u32_valid ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_optional_u32_invalid ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_percent_with_symbol ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_percent_without_symbol ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_post_process_ffmpeg ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_extract_audio_with_destination_returns_destination ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_fragment_progress_downloading_item ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_percent_invalid ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_post_process_merger ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_progress_speed_at_end_of_line ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_progress_template_finished_status ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_progress_template ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_progress_template_malformed_missing_end_marker ... ok
[INFO] [stdout] test app_state::tests::test_set_paused ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_progress_template_with_fragments ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_progress_without_eta ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_progress_template_unknown_eta ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_size_string_bytes ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_progress_template_na_speed ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_size_string_gib ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_size_string_invalid ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_size_string_kib ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_size_string_mib ... ok
[INFO] [stdout] test downloader::queue::tests::test_concurrent_default_value ... ok
[INFO] [stdout] test downloader::queue::tests::test_force_quit_flag_default_false ... ok
[INFO] [stdout] test app_state::tests::test_auto_completion_detection ... ok
[INFO] [stdout] test app_state::tests::test_ui_snapshot_includes_failed_count ... ok
[INFO] [stdout] test downloader::queue::tests::test_pop_queue_empty_returns_none ... ok
[INFO] [stdout] test downloader::queue::tests::test_get_concurrent_returns_expected_value ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_traditional_progress ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_progress_template_malformed_too_few_parts ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_ignore_youtube_extractor ... ok
[INFO] [stdout] test downloader::worker::tests::test_check_network_error_case_sensitive ... ok
[INFO] [stdout] test downloader::queue::tests::test_shutdown_flag_default_false ... ok
[INFO] [stdout] test downloader::worker::tests::test_check_network_error_connection ... ok
[INFO] [stdout] test downloader::worker::tests::test_check_network_error_empty_string ... ok
[INFO] [stdout] test downloader::worker::tests::test_check_network_error_false_positives ... ok
[INFO] [stdout] test downloader::worker::tests::test_check_network_error_http_error ... ok
[INFO] [stdout] test downloader::worker::tests::test_check_network_error_network ... ok
[INFO] [stdout] test downloader::worker::tests::test_check_network_error_partial_matches ... ok
[INFO] [stdout] test downloader::worker::tests::test_check_network_error_ssl ... ok
[INFO] [stdout] test downloader::worker::tests::test_check_network_error_unable_to_download ... ok
[INFO] [stdout] test downloader::worker::tests::test_check_network_error_timeout ... ok
[INFO] [stdout] test errors::tests::test_anyhow_error_conversion ... ok
[INFO] [stdout] test errors::tests::test_error_display_clipboard ... ok
[INFO] [stdout] test errors::tests::test_error_display_channel ... ok
[INFO] [stdout] test errors::tests::test_error_display_io ... ok
[INFO] [stdout] test errors::tests::test_error_display_lock ... ok
[INFO] [stdout] test errors::tests::test_error_display_other ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_all_presets_include_reset_stats_setting ... ok
[INFO] [stdout] test app_state::tests::test_remove_active_download ... ok
[INFO] [stdout] test app_state::tests::test_set_started ... ok
[INFO] [stdout] test app_state::tests::test_per_session_mode_fresh_count_each_batch ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_cookies_browser_chrome ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_cookies_browser_none_clears ... ok
[INFO] [stdout] test args::tests::test_combined_flags ... ok
[INFO] [stdout] test downloader::progress_parser::tests::test_parse_optional_u64_valid ... ok
[INFO] [stdout] test app_state::tests::test_take_failed_downloads_drains ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_cookies_browser_selection ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_custom_args_validation_conflict_short_output ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_custom_args_validation_conflict_output ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_custom_args_validation_empty_is_valid ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_custom_args_validation_conflict_download_archive ... ok
[INFO] [stdout] test app_state::tests::test_update_download_progress ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_custom_args_validation_unmatched_quotes ... ok
[INFO] [stdout] test app_state::tests::test_update_progress_calculation ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_custom_args_validation_valid_args ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_preset_bandwidth_saver_applies_correct_settings ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_output_format_mp3_string_varies_by_preset ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_preset_fast_download_applies_correct_settings ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_output_format_to_string ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_format_preset_to_string ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_preset_audio_archive_applies_correct_settings ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_preset_best_quality_applies_correct_settings ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_handle_input_returns_false_when_not_visible ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_rate_limit_custom_input ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_rate_limit_preset_selection ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_rate_limit_unlimited_clears_value ... ok
[INFO] [stdout] test downloader::queue::tests::test_force_quit_flag_can_be_set ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_reset_confirmation_esc_cancels ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_reset_confirmation_n_cancels ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_reset_confirmation_y_resets ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_setting_descriptions_count ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_reset_stats_setting_can_be_disabled ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_reset_stats_setting_can_be_enabled ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_reset_stats_setting_defaults_to_enabled ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_settings_menu_boolean_toggle_network_retry ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_reset_stats_setting_persists_to_app_state ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_settings_menu_navigation_up ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_settings_menu_toggle_closes ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_settings_menu_initial_not_visible ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_settings_menu_navigation_down ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_settings_menu_toggle_resets_state ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_settings_menu_navigation_up_at_top ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_settings_menu_navigation_down_at_bottom ... ok
[INFO] [stdout] test downloader::queue::tests::test_pop_queue_returns_url ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_settings_preset_descriptions ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_settings_preset_names ... ok
[INFO] [stdout] test downloader::queue::tests::test_process_queue_empty_queue_does_not_start ... ok
[INFO] [stdout] test downloader::queue::tests::test_queue_can_hold_urls ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_sponsorblock_toggle_on ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_total_menu_items_count ... ok
[INFO] [stdout] test ui::tui::input::tests::test_download_state_default ... ok
[INFO] [stdout] test ui::tui::input::tests::test_edit_mode_e_exits ... ok
[INFO] [stdout] test ui::tui::input::tests::test_edit_mode_enter_exits ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_sponsorblock_toggle_off ... ok
[INFO] [stdout] test ui::tui::input::tests::test_edit_mode_esc_exits ... ok
[INFO] [stdout] test downloader::queue::tests::test_shutdown_flag_can_be_set ... ok
[INFO] [stdout] test ui::tui::input::tests::test_edit_mode_up_navigation ... ok
[INFO] [stdout] test ui::tui::input::tests::test_filter_mode_backspace_on_empty_string ... ok
[INFO] [stdout] test ui::tui::input::tests::test_filter_mode_enter_keeps_filter ... ok
[INFO] [stdout] test ui::tui::input::tests::test_force_quit_state_check_timeout_preserves_valid_state ... ok
[INFO] [stdout] test ui::tui::input::tests::test_filter_mode_esc_clears_filter ... ok
[INFO] [stdout] test ui::tui::input::tests::test_filter_mode_char_input_adds_to_filter ... ok
[INFO] [stdout] test ui::tui::input::tests::test_filter_mode_backspace_removes_char ... ok
[INFO] [stdout] test ui::tui::input::tests::test_force_quit_state_check_timeout_resets_state ... ok
[INFO] [stdout] test ui::tui::input::tests::test_help_overlay_f1_closes ... ok
[INFO] [stdout] test ui::tui::input::tests::test_force_quit_state_not_confirmed_after_timeout ... ok
[INFO] [stdout] test ui::tui::input::tests::test_edit_mode_up_navigation_at_zero ... ok
[INFO] [stdout] test ui::tui::input::tests::test_help_overlay_esc_closes ... ok
[INFO] [stdout] test ui::tui::input::tests::test_help_overlay_other_keys_continue ... ok
[INFO] [stdout] test ui::tui::input::tests::test_force_quit_state_confirmed_within_timeout ... ok
[INFO] [stdout] test ui::tui::input::tests::test_force_quit_state_pending_not_confirmed_without_time ... ok
[INFO] [stdout] test ui::tui::input::tests::test_normal_mode_shift_q_confirms_force_quit ... ok
[INFO] [stdout] test ui::tui::input::tests::test_normal_mode_q_graceful_quit ... ok
[INFO] [stdout] test ui::tui::input::tests::test_normal_mode_shift_q_initiates_force_quit ... ok
[INFO] [stdout] test ui::tui::input::tests::test_normal_mode_slash_enters_filter_mode ... ok
[INFO] [stdout] test ui::tui::input::tests::test_normal_mode_t_handled ... ok
[INFO] [stdout] test ui::tui::input::tests::test_normal_mode_t_no_failed_logs_message ... ok
[INFO] [stdout] test ui::tui::render::tests::test_truncate_display_name_emoji ... ok
[INFO] [stdout] test ui::tui::render::tests::test_truncate_display_name_empty ... ok
[INFO] [stdout] test ui::tui::render::tests::test_truncate_display_name_exact_fit ... ok
[INFO] [stdout] test ui::tui::render::tests::test_truncate_display_name_long_ascii ... ok
[INFO] [stdout] test ui::tui::input::tests::test_normal_mode_unknown_key_unhandled ... ok
[INFO] [stdout] test ui::tui::render::tests::test_truncate_display_name_mixed_ascii_and_unicode ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_settings_menu_esc_closes ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_settings_menu_boolean_toggle_write_thumbnail ... ok
[INFO] [stdout] test ui::tui::input::tests::test_normal_mode_u_handled ... ok
[INFO] [stdout] test ui::tui::render::tests::test_truncate_display_name_unicode_no_truncation ... ok
[INFO] [stdout] test ui::tui::input::tests::test_force_quit_state_initial ... ok
[INFO] [stdout] test ui::tui::input::tests::test_normal_mode_f2_returns_unhandled ... ok
[INFO] [stdout] test ui::tui::input::tests::test_normal_mode_f1_shows_help ... ok
[INFO] [stdout] test ui::settings_menu::tests::test_settings_menu_toggle_opens ... ok
[INFO] [stdout] test ui::tui::render::tests::test_truncate_display_name_short_ascii ... ok
[INFO] [stdout] test ui::tui::render::tests::test_wrapped_height_empty_lines_count_as_one ... ok
[INFO] [stdout] test ui::tui::render::tests::test_wrapped_height_empty_list ... ok
[INFO] [stdout] test ui::tui::render::tests::test_wrapped_height_line_wraps_multiple_times ... ok
[INFO] [stdout] test ui::tui::render::tests::test_wrapped_height_exact_width_no_wrap ... ok
[INFO] [stdout] test ui::tui::render::tests::test_wrapped_height_short_lines_no_wrap ... ok
[INFO] [stdout] test ui::tui::render::tests::test_wrapped_height_line_wraps_once ... ok
[INFO] [stdout] test ui::tui::render::tests::test_wrapped_height_many_log_entries ... ok
[INFO] [stdout] test ui::tui::render::tests::test_wrapped_height_realistic_error_message ... ok
[INFO] [stdout] test ui::tui::render::tests::test_wrapped_height_mixed_line_lengths ... ok
[INFO] [stdout] test ui::tui::render::tests::test_wrapped_height_single_char_width ... ok
[INFO] [stdout] test ui::tui::render::tests::test_truncate_display_name_unicode_truncation ... ok
[INFO] [stdout] test ui::tui::render::tests::test_wrapped_height_unicode_characters ... ok
[INFO] [stdout] test utils::dependencies::tests::test_check_dependencies_returns_empty_on_success ... ignored
[INFO] [stdout] test utils::dependencies::tests::test_check_dependencies_with_both_installed ... ignored
[INFO] [stdout] test utils::display::tests::test_extract_youtube_id_various_formats ... ok
[INFO] [stdout] test ui::tui::render::tests::test_truncate_display_name_zero_max_len ... ok
[INFO] [stdout] test utils::display::tests::test_trailing_slash_handling ... ok
[INFO] [stdout] test utils::display::tests::test_truncate_url_exactly_30_chars ... ok
[INFO] [stdout] test ui::tui::render::tests::test_wrapped_height_zero_width_returns_line_count ... ok
[INFO] [stdout] test utils::display::tests::test_non_youtube_long_url_truncation ... ok
[INFO] [stdout] test utils::display::tests::test_truncate_url_with_unicode_path ... ok
[INFO] [stdout] test utils::display::tests::test_youtu_be_short_url_extraction ... ok
[INFO] [stdout] test utils::display::tests::test_truncate_url_with_encoded_unicode ... ok
[INFO] [stdout] test utils::display::tests::test_non_youtube_short_url ... ok
[INFO] [stdout] test utils::display::tests::test_truncate_url_short_url_returned_as_is ... ok
[INFO] [stdout] test utils::display::tests::test_truncate_url_with_emoji_path ... ok
[INFO] [stdout] test utils::display::tests::test_youtube_watch_url_extraction ... ok
[INFO] [stdout] test utils::file::tests::test_deduplicate_links_empty_clipboard ... ok
[INFO] [stdout] test utils::file::tests::test_deduplicate_links_whitespace_only_clipboard ... ok
[INFO] [stdout] test utils::file::tests::test_deduplicate_links_filters_invalid_urls ... ok
[INFO] [stdout] test utils::file::tests::test_deduplicate_links_mixed ... ok
[INFO] [stdout] test utils::display::tests::test_youtube_with_extra_params ... ok
[INFO] [stdout] test utils::file::tests::test_deduplicate_links_all_duplicates ... ok
[INFO] [stdout] test utils::file::tests::test_get_links_from_file_invalid_urls_filtered ... ok
[INFO] [stdout] test utils::file::tests::test_get_links_from_file_unicode_urls ... ok
[INFO] [stdout] test utils::file::tests::test_get_links_file_not_found ... ok
[INFO] [stdout] test utils::file::tests::test_sanitize_links_file_no_invalid_urls ... ok
[INFO] [stdout] test utils::file::tests::test_get_links_from_file_valid_urls ... ok
[INFO] [stdout] test utils::file::tests::test_get_links_from_file_empty_file ... ok
[INFO] [stdout] test utils::file::tests::test_get_links_from_file_whitespace_and_blank_lines ... ok
[INFO] [stdout] test utils::settings::tests::test_all_presets_cookies_empty ... ok
[INFO] [stdout] test utils::settings::tests::test_all_presets_sponsorblock_false ... ok
[INFO] [stdout] test utils::file::tests::test_get_links_very_long_urls ... ok
[INFO] [stdout] test downloader::queue::tests::test_process_queue_empty_queue_sets_completed ... ok
[INFO] [stdout] test utils::file::tests::test_sanitize_links_file_no_temp_file_left_behind ... ok
[INFO] [stdout] test utils::settings::tests::test_cookies_from_browser_args_when_set ... ok
[INFO] [stdout] test utils::settings::tests::test_cookies_from_browser_default_empty ... ok
[INFO] [stdout] test utils::settings::tests::test_format_preset_audio_only ... ok
[INFO] [stdout] test utils::settings::tests::test_format_preset_best ... ok
[INFO] [stdout] test utils::settings::tests::test_format_preset_hd1080p ... ok
[INFO] [stdout] test utils::settings::tests::test_format_preset_hd720p ... ok
[INFO] [stdout] test utils::settings::tests::test_format_preset_sd360p ... ok
[INFO] [stdout] test utils::settings::tests::test_format_preset_sd480p ... ok
[INFO] [stdout] test utils::settings::tests::test_get_ytdlp_args_all_options ... ok
[INFO] [stdout] test utils::settings::tests::test_cookies_from_browser_args_when_empty ... ok
[INFO] [stdout] test utils::file::tests::test_sanitize_links_file_removes_invalid ... ok
[INFO] [stdout] test utils::settings::tests::test_output_format_mp3 ... ok
[INFO] [stdout] test ui::tui::input::tests::test_edit_mode_down_navigation ... ok
[INFO] [stdout] test utils::file::tests::test_sanitize_links_file_returns_count ... ok
[INFO] [stdout] test utils::settings::tests::test_output_format_mp4 ... ok
[INFO] [stdout] test utils::settings::tests::test_get_ytdlp_args_basic ... ok
[INFO] [stdout] test utils::settings::tests::test_output_format_mkv ... ok
[INFO] [stdout] test utils::settings::tests::test_output_format_auto ... ok
[INFO] [stdout] test utils::settings::tests::test_parse_custom_args_quoted ... ok
[INFO] [stdout] test utils::settings::tests::test_parse_custom_args_malformed_unclosed_single_quote ... ok
[INFO] [stdout] test utils::settings::tests::test_parse_custom_args_simple ... ok
[INFO] [stdout] test utils::settings::tests::test_parse_custom_args_valid_double_quotes ... ok
[INFO] [stdout] test utils::settings::tests::test_parse_custom_args_multiple_quoted_segments ... ok
[INFO] [stdout] test utils::settings::tests::test_preset_audio_archive ... ok
[INFO] [stdout] test utils::settings::tests::test_preset_bandwidth_saver ... ok
[INFO] [stdout] test utils::settings::tests::test_preset_bandwidth_saver_has_rate_limit ... ok
[INFO] [stdout] test utils::settings::tests::test_preset_best_quality ... ok
[INFO] [stdout] test utils::settings::tests::test_preset_best_quality_no_rate_limit ... ok
[INFO] [stdout] test utils::settings::tests::test_preset_fast_download ... ok
[INFO] [stdout] test utils::settings::tests::test_rate_limit_args_when_empty ... ok
[INFO] [stdout] test utils::settings::tests::test_rate_limit_args_when_set ... ok
[INFO] [stdout] test utils::settings::tests::test_settings_default_values ... ok
[INFO] [stdout] test utils::settings::tests::test_rate_limit_default_empty ... ok
[INFO] [stdout] test utils::settings::tests::test_sponsorblock_args_when_disabled ... ok
[INFO] [stdout] test utils::settings::tests::test_sponsorblock_args_when_enabled ... ok
[INFO] [stdout] test utils::settings::tests::test_sponsorblock_default_false ... ok
[INFO] [stdout] test utils::settings::tests::test_validate_custom_args_conflicting_flags ... ok
[INFO] [stdout] test utils::settings::tests::test_validate_custom_args_empty ... ok
[INFO] [stdout] test utils::settings::tests::test_validate_custom_args_valid ... ok
[INFO] [stdout] test utils::settings::tests::test_validate_custom_args_unmatched_quotes ... ok
[INFO] [stdout] test ui::tui::input::tests::test_normal_mode_p_pause_toggle ... ok
[INFO] [stdout] test ui::tui::input::tests::test_normal_mode_t_blocked_when_downloads_active ... ok
[INFO] [stdout] test utils::file::tests::test_deduplicate_links_no_duplicates ... ok
[INFO] [stdout] test utils::file::tests::test_deduplicate_links_trims_whitespace ... ok
[INFO] [stdout] test utils::settings::tests::test_output_format_webm ... ok
[INFO] [stdout] test utils::settings::tests::test_parse_custom_args_empty ... ok
[INFO] [stdout] test utils::settings::tests::test_parse_custom_args_malformed_trailing_backslash ... ok
[INFO] [stdout] test utils::settings::tests::test_parse_custom_args_malformed_unclosed_double_quote ... ok
[INFO] [stdout] test utils::file::tests::test_sanitize_links_file_preserves_valid_content ... ok
[INFO] [stdout] test ui::tui::input::tests::test_normal_mode_u_blocked_when_downloads_active ... ok
[INFO] [stdout] test errors::tests::test_poison_error_conversion ... ok
[INFO] [stdout] test ui::tui::input::tests::test_normal_mode_t_requeues_failed ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 346 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 0.47s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test test_arboard_api_compiles ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/clipboard_integration.rs (/opt/rustwide/target/debug/deps/clipboard_integration-21793f2991eeb650)
[INFO] running `Command { std: "docker" "inspect" "c43e788cb3c7806d43ac63dc43df0d1145da9748ef2720757929cd885391a60e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c43e788cb3c7806d43ac63dc43df0d1145da9748ef2720757929cd885391a60e", kill_on_drop: false }`
[INFO] [stdout] c43e788cb3c7806d43ac63dc43df0d1145da9748ef2720757929cd885391a60e
